//
// Created by yqj on 2025/2/16.
//

#include "esp_timer_set.hpp"
#include "esp_timer.h"

typedef void (*TimerCallback)(void *);

void esptim_int_init(uint32_t tps, TimerCallback cb)
{
    esp_timer_handle_t esp_tim_handle;                      /* 定时器回调函数句柄 */

    /* 定义一个定时器结构体 */
    esp_timer_create_args_t tim_periodic_arg = {
        .callback = cb,                       /* 设置回调函数 */
        .arg = nullptr,                                        /* 不携带参数 */
    };

    esp_timer_create(&tim_periodic_arg, &esp_tim_handle);   /* 创建一个事件 */
    esp_timer_start_periodic(esp_tim_handle, tps);          /* 每周期内触发一次 */
}